Variable priority access system



Aug. 27, 1968 Filed Sept. 10

P. N. CROCKETT ET AL 19 Sheets-Sheet 1 FIG. 1

INDIVIDUAL EOUIPMENTS} 2 EXCHANGE INTERFACE IE1 cmculrs IE2 COMMON APPARATUS 4 BREAK-IN IE3 /CONTROL 9- SELECT como IE4 I T PRIORTTY GROUP 0 A ACCESS REQUEST LINES fly/jymmw n I ACCESS REQUEST LINES L PRIORITY DECISION LOGIC COMMON APPARATUS ACCESSIBLE FOR EXCHANGE (NOT ENGAGED TN ANOTHER EXCHANGE) INVENTORS PETER N. CRQCKETT MATTHEW A KRYGOISKT THOMAS S. STAFFORD BY @Mm-A ATTORNEY 7. 1968 P. N. CROCKETT ETAL 3,399,384

VARIABLE PRIORITY ACCESS SYSTEM Filed Sept. 10, 1965 19 Sheets-Sheet 15 FIG 3 CENTRAL roe c-s FROM CENTRAL INTERFACE ems 52 T0 05mm mnmce c: 1/0+c1,c2,cs ems a2 OR 04 (N62) FROM 1/0 8-* CENTRAL m8 .b DEV|CE -112 INTERFACE INFORMATION FLOW O PATH 0F CHANNEL 1234 H4 (T0 1/0 DEVICE 3 +INTERFACE 8+ CENTRAL B I i 102 CONTROL LINES T0 a FROM CENTRAL 4 11/0 CONTROL INTERFACE 52 0 1/0 me 2) C5 1/0 LEM C 1/0 aeuucsr LINES LEVEL 1 INTERNAL I/0 0 T0 0mm LEVEL 2 CONTROL 62 CONTROLS "5 1215M c5 CHANNEL READ ROUTglNCEENSTPREACIFIC. wRflf CONTROL LINES T0 & FROM CONTROLS m 3323 1/0 comm INTERFACE 7, 1968 P. N. CROCKETT ETAL 3,399,384

VARIABLE PRIORITY ACCESS SYSTEM 19 Sheets-Sheet 5 Filed Sept. 10, 1965 CAPACITY AT LEAST /1s,ooo wonos F I G 5 INTERNAL TIMING CONTROLS CORE STORE EL D SAR DR D EA SS START M5 SET 7, 1968 P. N. CROCKETT ETAL 3,399,384

VARIABLE PRIORITY ACCESS SYSTEM Filed Sept. 10, 1965 19 Sheets-Sheet 6 ADDR REG L5 CORE R/Ls (64 means) SET LSAR W DRIVE LINES BUS m READ TOR Bus m 1 i rym TOL 1 J BUS eo ncs J FIG. 8

CPU CYCLES START LS SET LSAR READ (R/LS) WRITE (W/LS) W GATE T0 L,R (AND OTHER CPU RECS) Aug. 27. 1968 Filed Sept. 10, 1965 FIG.I2

CPU CONTROLS SEOUENCINC CPU NOOE SHARED CPU CONTROLS SEOUENCI NC I/O MODE PROCESS CHANNEL X REQUEST P. N. CROCKETT ET AL 19 Sheets-$heet 1O SEQUENCE FOR TRANSFERING A BLOCK OF WORDS BETWEEN I/O SOURCE AND CPU VIA CHANNEL X.

CONTINUE MAIN PROGRAM SUBROUTINE (CAN END PREPARES CPU CHANNEL X AND NO DEVICE FOR A CPU EXECUTES START I /O INSTRUCTION CHANNEL x HANDLING VIA END CHANNEL) GR No SEQUENCE FOR OTHER 123 CHANNELS ./I2O

I 122 I I DOES CHANNELX NO I HAvE A REQUEST I ACTIVE OF HIGHEST PRIORITY sTATus E. I ggg fifiwf g (FIG.4) I I PRIORITY 124 YES I (DETERMINATION) .L

CYCLE READ BREAK-III 0R CYCLE WRITE I OTHER I READ I 1 WRITE READ WRITE SEQUENCE SEQUENCE (FIG.I3I (FIG.I4) K SEQUENCE ANY CHANNEL CYCLES IE5 REQUEST STILL J ACTIVE P BREAKOUT TO RESTORE CPU MODE Q I SEQUENCE Aug. 27, 1968 P. N. CROCKETT ETAL VARIABLE PRIORITY ACCESS SYSTEM 19 SheetsS'neet 1 1 Filed Sept. 10, 1965 13 READ ROUTINE RELATIVE TO CHANNEL X SELECT READ ROUTINE (FIOIZI ANOTHER CHANNEL N0 REQUEST ACTIVE? YES N0 LS FULL LS FULL? (B FULL OR YES YES EFFECTIVELY FULL) 0 0 B FULL R 8 FULL YES YES I 1 IT I II SELECT SELECT SELECT SELECT SELECT Bx "-LSx LSx--MS LSx- NSx LS)(- NS BX-NSX II T I EXECUTE EXECUTE EXECUTE EXECUTE EXECUTE Bx +LS LSx- -NSX LS +MS LSx+-MS) BX NS SET l/O INCRENENT INCRENENT INCRENENT INCRENENT STAT 3 NS COUNT; NSx COUNT; NS NS CONTINUE DEORENENT OECRENENT OECRENENT OECRENENT LEVEL 2 WORD COUNT; WORD COUNT; WORD COUNT; WORD COUNT; CHAN X RESET l/O RESET l/O RESET l/O RESET l/O REQUEST STAT 5 STAT 3 STAT 3 STAT 3 CONTINUE SET LEVEL LEVEL 0S2 0 S 2 CHANNEL X CHANNEL X REQUESTS REQUESTS ANY CHANNEL REQUESTS ACTIVE 27, 1968 P. N. CROCKETT ETAL 3,399,384

VARIABLE PRIORITY ACCESS SYSTEM Filed Sept. 10. 1965 19 Sheets-Sheet 12 FIG.14

WRITE ROUTINE RELATIVE TO CHANNEL X CHANNEL X WRITE PRIORITY rSEflUENCE SELECTED IS ANOTHER CHANNEL N0 THEREFORE LSX INACCESSTBLE OPERATING n rm 5 TIME YES us ACCESSIBLE IF NOT rum no Bx VACANT 0R EFFECTIVELY YES HENSE VACANT LSX VACANT VACANT YES LSX wxcm 2 N0 NO I SELECT SELECT SELECT SELECT SELECT p45 5 L5X BX 5+8! MS-BX L5X -BX SEO H SE0 8 SEQ A SEQ A 412 410 r/ EXECUTE EXECUTE EXECUTE EXECUTE EXE U x x MS LSX us s CYCLES) 2 cm Es u 5 BX 4 cm 2 CYCLES) '"CREMENT SET 1 l0 (s cm ES SET 1/0 sm 2, s51 1/ AKDRESS f SET 1/0 INCREMENT sm 2 sm 2 M s ADDRESS m mman smmc & DECREMENT 1/0 5m 2 LE V E L 2 or L8 ruu woRn coum NOT an BUT E TRIGGER CHAN CH M 1 REQUEST x RAISES LEVEL SETS ns LSX 2 I E REQ- FULL LATCH UEST, INCREMENT BECAUSE or MS ADDRESS BX FULL AND & DECREMENT ROUTINE m WORD courn PROGRESS.

ANY CHANNEL REQUESTS ACTIVE? 7, 1968 P. N. CROCKETT ETAL 3,399,384

VARIABLE PRIORITY ACCESS SYSTEM Filed Sept. 10, 1965 19 Sheets-Sheet 13 FIG. 5

1 2 3 4 5 s 1 a CPU CYCLES I 1 g 1 g 2 SET REG E 1 LATE SET REG DRIVE ARRAY R sERsE STROBE 2- ARRER LATCH E 22o ROUTINE RCVD "AWE F|G.16 NOT R10F MS CYCLE SEL on. 1

was) 228 W on SEL 2 FROM m4 R a SEL cm ADDER LATCH (FIG.9J 229 1 CPU RooE mas) RESET 0R SET (APPROX. LATE SET REG TIME) r ROUTINE RCVD /-21s END ROUTINE LATCH FROM RosoR RounRE NOT RCVD RouTmE RCVD 7, 1968 P. N. CROCKETT ETAL 3,399,384

VARIABLE PRIORITY ACCESS SYSTEM Filed Sept. 10, 1965 19 Sheets-Sheet 14 F I G. I 7

READ ROUTINE BX MSX ON LY CHANNEL X IN SERVICE) CPU MDDE CYCLES PRIORITY L YCLE [/0 MODE CYCLES 4 2 5 4 NE RECEIVED ED PRIORITY CYCLE) BREAK-IR CYCLE CHANNEL X ADDRESS TD ROAR (FIG 9) FORCE ALL ZERDES SRTD RDSDR W2 in R2 W1 W2 sum as STORE cvcuzmcm 340 SET HSX ADDRESS INTO SAR 342 (FROM LS VIA R) s BX sun s44 (VIA ems snow" m mans) son ns DECREHENT WORD COURT BREAK DUT CPU MODE CYCLES Y I g- 27, 1968 P. N. CROCKETT ETAL 3,399,384

VARIABLE PRIORITY ACCESS SYSTEM Filed Sept. 10, 1965 19 Sheets-Sheet 15 FIG.18

READ a s Ms 1/0 nuns CHANNEL x $60 380 mu REQUEST T 364 x 314 v x 384 H i ROUTINE RECEIVED T, l

T CHANNEL 1! REQUEST BREAK IR CYCLE X ROUTINE ROAR (HOB) Bx LS 370 u (WA R REGNSET STAT 3) f Y ROUTINE ROAR v ROUTINE 5 s90 sum as 1 LSX SOR son us HOUSEKEEPTNO BREAKOUT 7, 1968 P. N. CROCKETT ETAL 3,399,384

VARIABLE PRIORITY ACCESS SYSTEM Filed Sept. 10, 1965 19 Sheets-Sheet 17 F IG 2 0 us SATATE CPU W4 "9'3 oR2 W2 W3 R R2 W W; me RD [B MS RCVD LL 1.. i l 4 ,IVBQVL SET mE RESTORE LAST CPU ADDRESS m ROAR HERE sun T0 cm ADDRESS m Y0 CONTRDL THIS 3 REG m 5 ROAR CYCLE SET 50 ADDRESS LE INROAR EXTRA CYCLE NECESSARY DUE TO lNTERFERENCE m LS BETWEEN M 2%:JU1SH$H?E#O%*E" nCoPlE "'fi fl'm c uA zucq IMPOSED 0N BREAK-IN um I% R1 R2 &

IRCVDIBI ll2|i[ |---|CYC|4]2|3|415|B0| CHAIN me 1 R0 R0 LS ns AR X x I ROAR To \SETTO HOUSEKEEPING SET RD L BX 1ST STATE or 451 RTINEADDRESS HTINERCVD CHA'MRT'NE STATE Ls -snR IF REO ACTIVE. CH.XRTINE START 1 ms CYCLE MD MS (EOCR) CPU MODE ms R2 u H |RCVD| B1] 1 1 2 s 4 no mum SURBX aoz HOUSEKEEPRNG no mass I m ROAR WRMS-PLS cm X HhIBPX ULLLLLLLU |Jva v 1 a .1,- CHMNAGAINTO W CHEN I Lsx+sx wR LSX BX wnus LS me x x ME LOOK FOR OTHER RHNE "RTINE REQUESTS IEOCR) Aug. 27, 1968 P. N. CROCKETT ETAL 3,399,384

VARIABLE PRIORITY ACCESS SYSTEM 19 Sheets-Sheet l 8 Filed Sept. 10, 1965 :15 z 5 35 z :2 we a a 62 3 3; 2 IIPI'I |\/.|.|l|l

2220 Q :3; :T E a m N a q 5 55am E N m; E mm F w a s 7* w *1 w 52 :5: :w: w w w w w 2 2: w w mo mo mo mo 10 a a a 3;: 3:12 5 2 5 E; 2 5% 3582:

10 0 a a m w m w w m E H W SE8 2;; W2 5 2 5 22555 mo 2 g a mo 5 are T? a: 3m 2. a a a United States Patent Oflice 3,399,384 Patented Aug. 27, 1968 3,399,384 VARIABLE PRIORITY ACCESS SYSTEM Peter N. Crockett, Matthew A. Krygowski, and Thomas S. Stafford, Wappingers Falls, N.Y., assignors to International Business Machines Corporation, Armonk,

N.Y., a corporation of New York Filed Sept. 10, 1965, Ser. No. 486,326 17 Claims. (Cl. 340-1725) ABSTRACT OF THE DISCLOSURE Input-output functions of a data processing system are expedited. The input-output channels of the system are permitted to vary priority of requests for connection to computer main storage, and to add or remove buffer registers in respective queues of tandem buffer registers between peripheral devices and main storage. Priority and queue length are varied as a function of load conditions within the respective queue.

This invention relates to a system for controlling access of a plurality of relatively asynchronous information handling equipments to a common apparatus. An important but non-exclusive application of the invention is in data processing systems wherein a number of input-output synchronizer or channel units are adapted to compete for access to a shared central processing unit in the process of exchanging information with the central unit.

It is not considered unusual to arrange for competitive access of plural equipments to a central exchange unit in a predetermined order of priority. Ordinarily, however, it is considered necessary to introduce design restrictions to compensate for such predetermined ordering. Because of this the individual equipment having the lowest priority rank may receive less frequent service from the common apparatus and must therefore handle intelligence having a lower frequency of recurrence than the maximum frequency of the intelligence handled by the other equipments, or else the number of individual equipments may be restricted to assure complete service to all equipments even when all are coincidentally active and are carrying maximum frequency intelligence. Another alternative would be to design the common apparatus for the worst case simultaneous demand situation. However, in periods of less than peak activity, the common apparatus in such a system would not be utilized effectively and it is generally more costly to construct such apparatus than to allow for variable performance of the type considered herein.

Accordingly, objects of this invention are to provide: a system for more effectively controlling access of individual equipments to common apparatus; an access control system of improved design; an access control system in which demands on the common apparatus are varied in accordance with the amount of activity under way in the individual equipments; and an access control system which is capable of responding variably to demands of the individual equipments as a function of the condition of activity in all equipments.

In a particular embodiment of invention disclosed herein a data processing system, having a main internal store and a central processing unit for processing intelligence held in the store, is arranged to cooperate with a plurality of data synchronizer equipments hereinafter called channel units. The channel units operate essentially simultaneously by a process of interleaved word transfers, to asynchronously carry variable length blocks of intelligence words between a plurality of input/output devices and the internal store, each channel linking a plurality of input/ output devices in this fashion to the central processing unit. A system of channel units intercommunicating with an internal memory of a processing system in this fashion is disclosed in the US. patent application, Ser. No. 357,369 of L. E. King et al. entitled, Automatic Channel Apparatus, which was filed Apr. 6, 1964 and assigned to the International Business Machines Corporation. Pertinent parts of this King et al. application are incorporated herein by this reference.

In the system disclosed by King et al. a Bus Control Unit (ECU) serves as a traffic controlling element to regulate access to the internal memory by a central process unit (CPU) and several channel units (CH). While any one unit (CPU or CH) has access to the internal memory the other units are excluded from access. When several channels are simultaneously working, the ECU grants each access to the memory for at most the time required to transfer a basic unit of information flow, which in the King et al. system consists of a pair of thirtytwo bit words. Access to the memory when sought simultaneously by several channel units is granted by the ECU in a fixed order of priority. While this type of priority selection may be the least complex to implement it poses the problem that in the worst case situation (all channel units simultaneously active) one channel having lower priority than another channel could effectively be excluded from service causing possible over-runs in cyclic devices if the recurrence frequency of intelligence carried by it is less than the frequency in the other channel. If the channel carrying lowest frequency is granted a fixed highest priority, it could not thereafter be allowed to carry higher frequency intelligence without some form of manual or programmed reassignment of priority.

Accordingly, another object of this invention is to provide a variable priority selection system in which the competitive status for access to the central memory of a plurality of channel units is varied instantaneously in a flexible manner according to the instantaneous recurrence rates of intelligence being carried through the channels.

Another object is to provide a variable priority selection system in which a plurality of elements competing for selection are each capable of selectively producing a plurality of different categories of access demand signals calling for movement of a unit of information which have respectively different instantaneous competitive rank for priority of selection in response to instantaneous conditions internal to the element. Yet another object is to permit such elements to vary the said demand signals and the effects thereof effectively up to the instant of selection or as close thereto in time as is practicable.

A feature of the invention in connection with providing more efficient access control resides in the provision of individual access demand signalling means for each individual equipment. Each demand signalling means can be operated to selectively produce a plurality of different kinds of demand signals which have a predetermined order of priority inter se. The access controls in the common apparatus which determine the selection of an individual equipment are arranged to react in a first predetermined order of priority to demand signals of different kind, and in a second predetermined order of priority to demand signals of like kind issued by different signalling means. The selected demand signal will be the one having the highest rank of all currently active demand signals in both the first and second pedetermined orders of priority. Thus it should be understood that non-selected demand signals coincident with and of the same kind as the selected signal are associated with equipments having lower assignments of priority in the second predetermined order. As a consequence of this it is possible for any one active equipment to issue a demand signal of higher priority rank than demand signals of any other active equip- 

